#ifndef RRTRACER_H
#define RRTRACER_H

#include "rrlight.h"
#include "rreye.h"
#include "rrprimset.h"
#include "rrprim.h"
#include "rrcuboid.h"
#include "rrplane.h"
#include "rrquadric.h"
#include <map>
#define RR_OBJMAX 100

class RRTracer
{
private:
    int obj_num;
    RREye eye;
    RRLight light;
    RRPrimSet *primset;

public:
    RRTracer();
    int rrCheckHit();
    RRVec4 rrTrace();
    RRPrim* rrGetPrim();
    void rrSetPrimSet(RRPrimSet *arg);
    void rrSetPrim(RRPrim *arg);
    void rrGenerateEye(float xs, float ys);
    RRLight rrGetLight();
};

#endif // RRTRACER_H
